Recording of information

ABSTRACT

A product which is intended to be used in connection with the recording of information has a surface on which there are a plurality of information alternatives which each have an associated code area. The surface is further provided with a two-dimensional position code which codes coordinates for a plurality of positions on the surface; which is unrelated to the information to be recorded and which enables recording of a desired information alternative by reading the position code for a position in the code area associated with the desired information alternative. 
     The product can advantageously be used in restaurants, when booking trips, making hotel reservations and the like. 
     A system for recording information, as well as a method and software for making the product are also described.

CROSS REFERENCE TO RELATED APPLICATION

This application claims the benefit of U.S. Provisional Application No.60/138,400, filed Jun. 9, 1999.

FIELD OF THE INVENTION

The present invention relates to a product intended to be used inconnection with the recording of information of the kind stated in thepreamble to claim 1. The invention also relates to a system forrecording information, a method for making a product for recording ofinformation and an electronic storage medium for computers, on whichsoftware for the same purpose is stored.

BACKGROUND OF THE INVENTION

In restaurants there are often touch screens showing various disheswhich a customer may order. The restaurant staff use these touch screensfor entering orders which they take from the customer and fortransmitting the orders to the kitchen where they are subsequentlyprepared. However, touch screens are relatively expensive and,consequently, restaurants usually only have a few of these screens.Furthermore, the touch screens are usually stationary, which means thatstaff members must stand in a particular location when entering theorders. Accordingly, in most cases customers cannot see which order isbeing entered and, consequently, they cannot check that the order theyhave placed has been entered correctly. Similar problems exist in, forexample, the hotel industry and other industries where touch screens areused to take orders.

A solution to this problem, which is adapted to restaurants, isdescribed in U.S. Pat. No. 4,516,016. The patent discloses a deviceintended to be placed on each table in a restaurant and to be used bycustomers for entering their order. The device comprises a menu and anoptical reading pen. In the traditional way, the menu contains variousfood and drink alternatives, each alternative being associated with abarcode. The customer passes the optical reading pen across the barcodeof the dish she wishes to order and the order is transmitted to thekitchen where staff check whether they can fill the order. If the ordercan be filled, a confirmation is transmitted to the customer in the formof an indicator light on the pen lighting up in green color. If theorder cannot be filled, a red light comes on and the customer is obligedto chose a different dish. When the order has been filled, a bill isautomatically printed for the customer. In the device according to U.S.Pat. No. 4,516,016 touch screens are thus not used and customers entertheir orders themselves. However, it has certain other drawbacks. Forexample, special equipment is required for producing the barcodes. Thisequipment can be relatively expensive. Moreover, many restaurants do nothave the use of this type of equipment, which makes it inconvenient forthe restaurant staff to make temporary or permanent changes to themenus. Furthermore, problems arise if standardized barcodes do not existfor the dishes or beverages which are to be included in the menu.

WO 95/04979 discloses a system which makes it possible to produce, onthe basis of a common check for a group of guests, a separate check foran individual guest in the group. On the common check, each partialorder is identified in a traditional manner with a short description anda price. In addition, the partial order is provided with an ID numberwhich indicates the number of the table in the restaurant and a serialnumber of the partial order. The ID number is also coded with a barcode. When a separate check is to be made, a bar code reader is used toread the bar codes which correspond to the partial orders for the guestat issue. The bar codes are transferred to a computer which has storedthe partial orders and which, on the basis of table number and serialnumber, can identify the partial order and the price thereof.

Although in this case it is not necessary to be able to code thecontents of the specific partial orders directly by means of bar codesbut it is sufficient with table number and serial number, the system isjust the same limited to precisely a table number and a serial number.If additional and/or other information is to be recorded, additional barcodes must be defined. If the information is to be rearranged and beprinted using another layout, the system must also be changed so thatthe bar codes are printed in other positions.

Similar problems occur when various types of professionals wish torecord information, for example, document what has been done, what is tobe done, or what is available. One example is a dentist who whiletreating a patient writes down what he is doing by hand and later inputsthe information to his computer. Another example are warehouse staff whotake stock by walking around and writing down the items which are instock. Yet another example are staff at motor vehicle inspectionfacilities who fill in a form with information about defects which mustbe corrected in a car which is being inspected. All these and othertypes of professionals thus are in need of recording information in asimple and flexible manner.

SUMMARY OF THE INVENTION

The object of the present invention is to provide an informationrecording system which is flexible at least to the same extent as orpreferably to a greater extent than the above described bar code system.

This object is achieved wholly or partly according to the invention by aproduct, a system, a method, and an electronic storage medium asdescribed and claimed herein.

According to a first aspect of the invention, it thus relates to aproduct which is intended for use in connection with the recording ofinformation and which has a surface on which there are a plurality ofinformation alternatives, each having an associated code area. Thesurface is provided with a two-dimensional position code which codescoordinates for a plurality of positions on the surface in said codeareas, which is unrelated to the information which is to be recorded andwhich permits recording of a desired information alternative by readingthe position code for a position in the code area associated with thedesired information alternative.

The surface can be any surface to which a position code can be applied,for example by printing. The code is preferably applied to the surfacefrom the outset, before adding the information alternatives.Alternatively, it can be applied simultaneously as the informationalternatives or even after they have been applied.

A code area is associated with each information alternative. The codearea can be adjacent to the information alternative or overlap itcompletely or partially. The information alternatives and their codeareas should be arranged so that it is obvious to the user which pair ofinformation alternative and code area belong together, enabling the userto record an information alternative by reading the code in the codearea associated with the information alternative.

It should here be pointed out that information alternative should beinterpreted in a wide sense. It need not be a matter of alternativeswhich exclude each other, but all forms of information units areincluded, of which the user may want to record one or more or all theinformation units.

By two-dimensional position code is further meant that the code codescoordinates in two dimensions for positions on the surface. Examples ofadvantageous position codes are stated in the specific descriptionportion. Other two-dimensional position codes are also conceivable.

The position code is unrelated to the information that is to berecorded. Thus there is no fixed connection between code and informationalternative. By this is meant that the code does not code the actualinformation, but merely positions on the surface, so that it is via theposition on the surface that the connection to various informationalternatives can be made. Obviously the same position code can be usedfor recording arbitrary information. No change of the code on thesurface has to be made when changing the information alternatives, butthe connection between position and information can be available in, forexample, the memory of a computer where the connection is easy tochange. In this way, a very flexible product is obtained.

A further advantage of the product according to the invention is thatthe two-dimensional position code renders it possible to makehandwritten notes on the surface and to record these handwritten notesdigitally by continuously reading the position code. The handwrittennotes are thus represented as a number of positions. The characters orfigures which these positions represent can further be interpreted bysoftware, such as ICR software (ICR=Intelligent Character Recognition).If a device that is used to record information by reading the positioncode is provided with a pen point, it can thus be used to write ordinaryhandwritten notes on the surface of the product, to record thesehandwritten notes digitally, and to record information alternatives thatare stated on the surface. This possibility is very useful since on manyoccasions where information is recorded there is a need to state furtherinformation, such as a number. The information that is being writtenalso remains in physical form as a confirmation of the digitallyrecorded information.

This confirmation can also be obtained when recording merely informationalternatives if the device has a pen point since in that case the penpoint will make a mark in the position in which the user has read theposition code.

If the position code covers the entire surface from which theinformation is to be recorded, in which case the position code thuscodes positions with a certain resolution across the entire surface, auser can easily make products with arbitrary information alternativesand arbitrary layout, which products allow recording of the informationalternatives by reading the position code. Various types ofprofessionals can thus produce different forms with position code andwith different information alternatives which can easily be recorded byreading the position code.

A user can more easily use a product according to the invention comparedwith a corresponding bar code product since it is sufficient to read theposition code for a single position within the code area of aninformation alternative in order to record the associated informationalternative.

The two-dimensional position code can advantageously code a plurality ofpositions within each code area. All these positions then identify oneand the same information alternative and it is thus sufficient that arecording device reads the position code somewhere in the code area torecord the associated information alternative.

The position code can advantageously overlap at least one, andpreferably each, information alternative. This means that no specificspace for the position code is required. It also renders the productmore esthetically pleasing.

Furthermore it makes the product easier to use for inexperienced users,first because the user intuitively points to the information he isinterested in and second because it is sufficient to point to a singlespot on the desired information alternative. However, it may besufficient to point to a spot adjacent to a desired informationalternative, if the code area extends outside the actual informationalternative. Thus, any hesitance about which code to be read in order torecord an information alternative is eliminated.

As mentioned above, the position code advantageously extends across theentire surface of the product. Consequently, information is recordedfrom the entire surface and information alternatives are added later inareas in which there was no information from the outset.

In a preferred embodiment, the position code is based on a first stringof symbols which contains a first predetermined number of symbols andwhich has the characteristic that if a second predetermined number ofsymbols is taken from the first string of symbols, the location of thesesymbols in the first string of symbols is unambiguously determined.

This first string of symbols can be used to determine the position in afirst dimension on the surface. The string of symbols is advantageoussince it has a so-called window characteristic. A window and, thus, aposition are defined by said second predetermined number of symbols, butit is sufficient to move to the next symbol for a new position to bedefined. Thus, it is possible to provide a high resolution and a codewhere it is only necessary to enter exactly the number of symbols thatdefines a position.

Furthermore, the position code can advantageously be based on a secondstring of symbols having the same characteristic as the first string ofsymbols, the second string of symbols being used to determine theposition in a second dimension on the surface.

By the position code being based on strings of symbols with a finitenumber of symbols arranged in a predetermined order, it is possible todefine a “formula” for determining the position. In this way, only asmall amount of memory space is required for storing the strings ofsymbols and the position determination can be carried out quickly andeasily.

The position code advantageously has the characteristic that eacharbitrary partial surface which has a predetermined magnitude on thesurface and contains the position code defines a position.

Such a position code can be implemented, for example, by means of theabove-mentioned strings of symbols and is advantageous to use in thisconnection since it is sufficient to read the position code in anarbitrary position in the code area. The user need not strive to enter aspecific area, which is the case when recording bar codes.

The position code is advantageously composed of symbols which representat least two different values, each symbol comprising a raster pointwhich is included in a raster extending across the surface, and at leastone marking, the value of each symbol being indicated by the location ofsaid marking in relation to a raster point.

This design of the position code is advantageous by being easy to detectand decode by image processing since only one type of symbol, i.e. onemarking, need be located. This means that each marking can be madesmall, which in turn means that the position code need not blacken thesurface very much and that the position code thus can be discreet andnot disturbing to the human eye.

The position code can advantageously constitute a subset of a secondposition code which defines coordinates for points on a larger imaginarysurface. The coordinates thus need not have an origin of coordinates onthe product. This gives the advantage that the coordinate area which iscoded by the position code on the product can be dedicated to a specificapplication, for example for inputting information alternatives that aresuperimposed on the position code, or to a specific type of product. Anexternal unit to which recorded positions are transferred foridentification of associated information alternatives can thendistinguish positions from different products or applications.

The position code can be implemented in various ways on the surface,e.g. with the aid of a magnetic or chemical material. However,preferably it is implemented in such a way that it is opticallyreadable. It can be optically readable in light which is outside thevisible range.

In a preferred embodiment, the product is in the shape of a sheet. Thesheet can, for example, be made of paper or some other material to whichcodes can be applied. In that way, the product will be very inexpensiveand can be of the disposable kind. In the example of the restaurant, themenu and the placemat can, for example, be combined into one sheet whichis replaced for each new customer.

The information alternatives can be indicated by means of writtencharacters or graphic symbols or in some other way which makes itpossible for the user to understand which information alternative isintended.

In one embodiment, the surface is provided with at least one writingarea, said position code overlapping the writing area and codingcoordinates for a plurality of positions in the writing area. Asmentioned above, the writing area can be used to make handwritten noteswhich are recorded digitally by means of the position code.

The writing area need not be associated with an information alternativebut can be a specific coordinate area which is dedicated to handwrittennotes.

In one embodiment, however, the writing area is associated with aninformation alternative and constitutes part of the code area of theinformation alternative. A user can then tick off, for example, arelevant alternative or write a note, such as a digit, which isassociated with the information alternative. If only the informationalternative is to be recorded, this can be made later by reading theposition code in the relevant code area. If the actual note is also tobe recorded, the position code must be read while making the note.

The product can be particularly used in connection with orders and thenthe information alternatives constitute order alternatives. The termorder relates to purchase or reservation of a product, such as a dish, aholiday trip, or reservation of a seat in a theater.

As mentioned above, several positions within a code area can define oneand the same information alternative. In other words, these positionsjointly define a partial surface or a field on the surface. If the codearea overlaps the information alternative, the position code in the codearea will thus define the field on the surface in which the informationalternative with which the position code is associated is stated.

The invention can also be described as a system for recording ofinformation. The system comprises on the one hand a product as describedabove; and on the other hand a device for recording one of theinformation alternatives, the device comprising a sensor for reading theposition code in the code area associated with the informationalternative and processor with software for interpreting the readposition code for identifying the position which corresponds to the readposition code.

This system has essentially the same advantages as stated above for theproduct. The device can, as its output signal, give positioncoordinates. The position coordinates are preferably transferred to anexternal unit with software which on the basis of the positioncoordinates determines the corresponding information alternative.Alternatively, the device itself can contain software for determiningwhich information alternative corresponds to the position coordinates.The system may contain a table or some other memory structure which canstore an information alternative for each code area on the surface. Thememory structure can be available in the recording device or in theexternal unit. As described above, the device can be provided with a penpoint. In this case, the system is suitably provided with software forinterpreting notes that are made with the pen point and recorded bymeans of the position code.

According to a third aspect, the invention relates to a method of makinga product for recording of information, comprising the steps of creatinga surface with a two-dimensional position code, which codes coordinatesfor a plurality of positions on the surface, applying a plurality ofinformation alternatives which are unrelated to the position code on thesurface, determining, for each information alternative, a code area inwhich reading of the position code is to result in recording of thisinformation alternative, and associating this code area with theinformation alternative in a memory structure.

The advantages of the method are evident from the discussion aboveregarding the product.

The step of creating a surface with a two-dimensional position code canbe carried out by the user obtaining, for example, a sheet of paper witha preprinted position code. Alternatively, the position code can bewritten on the sheet by means of a printer and a computer before orafter applying the information alternatives.

The method can comprise additional steps that are used to make a productwhich besides has one or more of the additional features describedabove.

According to a fourth aspect, the invention relates to a storage mediumfor a computer, on which software is stored for carrying out the stepsaccording to the method above.

The storage medium can be any storage medium for computer programs, suchas a RAM, a diskette, disk or some other type of memory with which acomputer can cooperate.

The advantages of this software are evident from that stated above.

The present invention can obviously be applied within a number ofdifferent areas where graphical user interfaces are used. Examples ofsuch areas are travel bookings, cinema ticket reservations, and hotelreservations.

The invention can also be used for all types for recording ofinformation, particularly in cases where the information is normallyfirst recorded on paper and then input to a computer and in cases wheretouch screens are used. In this case, preprinted forms with positioncode and information alternatives can be generated and the informationalternatives then be easily recorded by reading the position code.Handwritten notes can also be made.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be described in more detail below with reference tothe accompanying schematic drawings which, by way of example, show apresently preferred embodiment of the invention.

FIG. 1 shows an empty menu with code areas with a 2-dimensional code.

FIG. 2 shows the same menu as in FIG. 1, but with added orderalternatives which overlap the code areas.

FIG. 3 shows schematically a sheet of paper which is provided with asubset of an absolute position-coding pattern.

FIG. 4 shows schematically how symbols included in the absoluteposition-coding pattern can be composed.

FIG. 5 shows schematically an example of 4×4 symbols that are used-tocode a position.

FIG. 6 shows a device for recording an order alternative from the menuin FIG. 2.

FIG. 7 shows schematically a system according to an embodiment of theinvention.

FIG. 8 shows schematically a flow chart for software for making theproduct.

FIG. 9 shows a menu with order alternatives and associated code areaswhich do not overlap the order alternatives.

DESCRIPTION OF PREFERRED EMBODIMENTS

Now follows first a description of two embodiments where the inventionis used for recording orders at a restaurant or the like. In this casethe information alternatives thus consist of order alternatives and theproduct is a menu. Then follows a description of examples of twodifferent two-dimensional position codes which can advantageously beused to code coordinates for positions on different products.Subsequently, a device which can be used to record information and asystem in which the device can be included are described. Finally, theway in which a product according to the invention can be made isdescribed and a further example of a menu is stated.

Examples of Application in a Restaurant

FIG. 1 shows a sheet 1, constituting an empty menu and having a surface2, which is divided into twelve fields 3, to which different orderalternatives can be added. All the fields 3 comprise a two-dimensionalposition code 4 of a type that will be described in more detail below.The position code is located in code areas 5 which in this casecompletely overlap the fields 3. For the sake of clarity, the positioncode 4 is only drawn in one part of one of the fields, but it is meantto extend across the entire surface 2. It codes the coordinates for aplurality of positions in each field 3. The fields 3 can be predefinedor they can be defined by the user.

Order alternatives can be written in the fields on the sheet 1 by handor with the aid of a computer, in which case the sheet is placed in aprinter. Any order alternative can be written in the fields 5. The onlything the user must do is to connect the fields to the orderalternatives, which can preferably be carried out by means of a simplecomputer program. In this case, the connection is effected byassociating, with the aid of a table structure, all the positions whichare located within a certain field and which are coded by the positioncode in this field with the order alternative written in this field onthe menu. In some fields no order alternatives are added and these areassociated with a suitable indication of the fact that there is no orderalternative in that field.

FIG. 2 shows an example of a menu with order alternatives added in theform of various dishes and beverages which are written in text format.In this case, all the positions coded by the position code in the fourthfield from the top are associated with the order alternative “VegetableSoup”. If the restaurant wishes, it can subsequently change the orderalternative in the same field to, for example, “Avocado” withoutchanging the coding on the sheet, by simply changing the connection fromthe positions coded by the position code in the field from “VegetableSoup” to “Avocado”.

In this example, the position code in FIGS. 1 and 2 is made up ofsymbols of a first and second type 6 a, 6 b and more specifically ofdots of two different sizes, the dots 6 a having the larger diameterrepresenting a one and the dots 6 b having the smaller diameterrepresenting a zero. As mentioned above, for the sake of clarity theposition code is only shown on a small part of the menus in FIGS. 1 and2. Moreover, the symbols 6 a, 6 b have been very much enlarged and madeclearly visible. In practice, the code can be completely invisible tothe eye or at least a great deal more discreet in order not to spoil theappearance of the product. Furthermore, in practice the symbols can bemuch smaller in order to achieve a better position resolution.

The position code is arranged so that if a device images the dots on anarbitrary partial surface of a predetermined size, the position of thepartial surface on the surface of the sheet can be determinedautomatically with the aid of image processing means in the device. If,for example, a device images the dots on the partial surface 10 in FIG.1, a processor in the device can determine, with the aid of the positioncode which the dots represent, the position of the partial surface 10 onthe menu.

Position Coding—Example 1

An example of a position code, hereinafter also called a position-codingpattern, which enables the position determination will be describedbelow. The pattern is adapted for position determination by the imagingof a partial surface containing 5×5 symbols. The symbols represent abinary coding. It is assumed below that the position-coding pattern isavailable on a sheet of paper.

The sheet has an x-direction and a y-direction. In order to code theposition in the x-direction, a 32-bit number series of ones and zeros isgenerated in a first step. In a second step, a 31-bit number series ofones and zeros is generated by removing the final bit of the 32-bitseries. Both number series, hereinafter called the x-number series,should have the characteristic that if five successive bits are selectedanywhere in the series a unique group of five bits is obtained whichdoes not exist anywhere else in the series. They should also have thischaracteristic if one “connects” the end of the series to the beginningof the series. The five-bit group thus provides an unambiguous coding ofthe location in the series.

An example of a 32-bit number series having the above characteristic is“00001000110010100111010110111110”. If the last zero is removed fromthis number series, a 31-bit number series having the samecharacteristic is obtained.

The first five bits in the above number series, i.e. 00001, constitutethe code for position 0 in the number series, the next five bits, i.e.00010, constitute the code for position 1, etc. The positions in thex-number series as a function of the five-bit groups are stored in afirst table. Naturally, position 31 only exists in the 32-bit series.Table 1 below shows the position coding for the example described above.

TABLE 1 Position Five-bit Group 0 00001 1 00010 2 00100 3 01000 4 100015 00011 6 00110 7 01100 8 11001 9 10010 10 00101 11 01010 12 10100 1301001 14 10011 15 00111 16 01110 17 11101 18 11010 19 10101 20 01011 2110110 22 01101 23 11011 24 10111 25 01111 26 11111 27 11110 28 11100 2911000 30 10000 31 00000

It is only possible to code 32 positions, i.e. positions 0-31, with theaid of the 32-bit series. However, if one writes the 31-bit series 32times in succession on a first row and the 32-bit series 31 times insuccession on a second row below the first row, the series will bedisplaced in relation-to each other in such a way that two five-bitgroups written one above the other can be used to code 31×32=992positions in the direction of the rows.

For example, suppose that the following code is written on the sheet:

000 . . . 11111000001000110010100111010110111110 . . .

000 . . . 11111000010001100101001110101101111100 . . .

If the five-bit groups are translated into positions according to Table1, the following positions of the 32- and 31-bit series are indicated onthe sheet.

0 1 2 . . . 30 31 0 1 2 . . . 29 30 31 0 1 2

0 1 2 . . . 30 0 1 2 3 . . . 30 0 1 2 3 4

The coding in the X-direction is thus based on using a number seriesconsisting of n bits which is made up in such a way that if m successivenumbers are taken from the series, these m numbers will code theposition in the series unambiguously. The number of codable positions isincreased by using a second number series, which is a subset of thefirst number series and which is thus of a different length than thefirst series. In this way, a displacement between the series is obtainedin the longitudinal direction of the rows.

The coding in the Y-direction is based on the same principle. A numberseries is created, hereinafter called the Y-number series, whichconsists of p numbers, the series being made up in such a way that if rsuccessive numbers are taken from the series, these r numbers will codethe position in the series and thus the position in the Y-directionunambiguously. The numbers in the Y-number series are coded in thepattern on the sheet as a difference between the positions in theX-direction in two rows which is calculated in a special way.

More specifically, alternate rows of the 31-bit series and the 32-bitseries are written as follows:

Row 1: (31) (31) (31) (31) . . .

Row 2: (32) (32) (32) (32) . . .

Row 3: (31) (31) (31) (31) . . .

Row 4: (32) (32) (32) (32) . . .

Row 5: (31) (31) (31) (31) . . .

Naturally, on the sheet, the series are written using the differentsizes of dots. The rows start in different positions in the X-numberseries. More specifically, one begins two successive rows in such a waythat if one determines the difference modulo 32 between two positionnumbers located one above the other, expresses the difference by meansof a five-bit binary number, and takes the two most significant bits ofsaid five-bit binary number, this number shall be the same regardless ofwhere one is in the row. In other words, one starts the series in such away that the displacements between the series in two successive rowsremain within a specific interval along the entire row. In this example,the maximum displacement can be 31 positions or bits and the minimumdisplacement can be 0 positions or 0 bits. The displacements along eachpair of rows is then within one of the intervals 0-7, 8-15, 16-23, or24-31 positions/bits.

For example, suppose that the series are written as follows (expressedin position numbers):

Row 1: 0 1 2 3 4 5 6 7 . . . 30 0 1 2 3

Row 2: 0 1 2 3 4 5 6 7 . . . 30 31 0 1 2

Row 3: 25 26 27 28 29 30 0 1 . . . 24 25 26 27 28

Row 4: 17 18 19 20 21 22 23 24 . . . 16 17 18 19 20

Row 5: 24 25 26 27 28 29 30 0 . . . 23 24 25 26 27

If the difference is determined in the above way, it will be 0 betweenrows 1 and 2, 0 between rows 2 and 3, 1 between rows 3 and 4, and 3between rows 4 and 5. Take, for example, 26-18 in rows 3 and 4, whichequals 8, which is 01000 in binary code. The two most significantnumbers are 01. If instead one takes 0-23 in the same rows, which modulo32 equals 9, the two most significant numbers are 01 just like in theprevious example. In this example, four difference numbers 0,0,1,3 areobtained. Now, if in same way as for the X-direction, one has created aY-number series from the numbers 0, 1, 2, and 3 which has thecharacteristic that if four successive numbers are taken from theseries, the position in the series will be determined unambiguously, itis possible by looking up the number 0013 in a table to unambiguouslydetermine the position in the Y-direction. In this way, it is possibleto determine 256 unique positions in the Y-direction.

The following is an example of the beginning and the end of a Y-numberseries containing the numbers 0-3:

TABLE 2  0 0000  1 0001  2 0010  3 0100  4 1000  5 0002  6 0020  7 0200 8 2000  9 0003  10 0030 . . . . . . 251 2333 252 3333 253 3330 254 3300255 3000

The following is a description of how the position determination iscarried out. Suppose that one has a sheet as described above whichacross its surface has a pattern made up of a first symbol representinga one and a second symbol representing a 0. The symbols are arranged inrows and columns and in 32-bit and 31-bit series as described above.Furthermore, suppose that one wishes to determine the position on thesheet where one places a device equipped with a sensor which can recordan image containing 5×5 symbols.

Suppose that an image recorded by the sensor looks as follows:

1 1 1 1 1

1 1 1 1 1

0 1 0 1 0

0 0 1 0 1

0 0 1 0 1

In a first step, the device translates these five-bit groups intopositions with the aid of Table 1. The following positions are obtained:

26 (11010)

26 (11010)

11 (01011)

10 (01010)

10 (01010)

Subsequently, the magnitude of the displacement between the positionnumbers in the different rows is determined by taking the differencemodulo 32. The two most significant numbers of the differencesdetermined in this manner expressed as five-bit binary numbers are 0, 1,0, 0. According to Table 2, this difference number equals position 3 inthe Y-direction. Thus, the coordinate for the second dimension on thesheet is 3.

A third table stores the starting position of each row, i.e. theposition in the numbers series where each row starts. In this case, withthe aid of the y-coordinate 3 it is possible to look up the startingpositions of the rows from which the recorded five-bit groups have beentaken. Knowing the starting positions of the rows from which the twouppermost five-bit groups have been taken and the X-positions to whichthese two five-bit groups correspond, i.e. positions 26 and 26, it ispossible to determine the x-coordinate, or the position in the firstdimension, of the recorded image. For example, suppose that the startingpositions of the two uppermost rows are 21 and 20 respectively. In thiscase, the two rows from which the two uppermost five-bit groups in therecorded image are taken will thus look as follows:

Row 3: 21 22 23 . . . 29 30 31 0 1 2 . . . 25 26 27 . . .

Row 4: 20 21 22 . . . 28 29 30 0 1 2 . . . 25 26 27 . . .

It follows from the fact that the y-coordinate is 3 that the two firstfive-bit groups are taken from rows 3 and 4. It follows from the factthat odd rows are made up of the 31-bit number series and even rows aremade up of the 32-bit number series that row 3 is made up of a 32-bitnumber series while row 4 is made up of a 31-bit number series.

On the basis of this information, it is possible to determine that thex-coordinate is 35. This can be verified by repeating the above stepsfor the remaining pairs of five-bit groups in the recorded image. Thereis thus a certain amount of error tolerance.

The accuracy of the position determination can be further increased bydetermining the location of the middle dot in the 5×5 group in relationto the center of the image. The position resolution can thus be betterthan the distance between two symbols.

Naturally, the above steps are carried out by software, which in thisexample gives the coordinates 3 and 35 as its output signal. Thesoftware can either be located in the device the customer or waiter isusing to read the position-coding pattern on the menu or in anotherdevice to which the image(s) is(are) transferred.

The above description relates to an example and can thus be generalized.There need not be 32 numbers in the first X-number series. The numberdepends on how many different symbols are to be used in the pattern incombination with the number of symbols which are recorded in thex-direction in connection with the position determination. For example,if the number of different symbols is 3 and the number of recordedsymbols is 3, the maximum number of numbers in the X-number series willbe 3×3×3=27 instead of 32. The same type of reasoning applies to theY-number series. The bases of these number series can thus be differentand the number of symbols which code a position, and consequently alsothe number of positions coded by the number series, can vary. Moreover,the series can be based on symbols other than numbers and can thereforebe described as strings of symbols.

As mentioned above, the symbols can be of many different kinds. They canalso be numbers, but in that case OCR software is required for carryingout the position determination, which makes the device for interpretingthe position-coding pattern more expensive and more complicated. It alsoleads to increased error sensitivity.

The above method of coding positions on a surface and of carrying outthe position determination on the surface is advantageous in that itonly requires a very small amount of memory and processor capacity. Inthe above example, it is only necessary to store Table 1 with 32 rows,Table 2 with 256 rows, and Table 3 with 256 rows. The positiondetermination can be carried out by means of three table look-ups and asimple calculation. When the position has been determined, it isnecessary to search the table one more time in order to determine theorder alternative to which the position corresponds. However, this canbe carried out in a central computer to which the position istransferred.

It should be emphasized that it is, of course, possible to let the rowsbe columns and the columns be rows in the above Example.

Position Coding—Example 2

Now follows the description of an Example of a second two-dimensionalposition coding which can be used to accomplish the invention.

FIG. 3 shows a part of a product in the form of a sheet of paper 101,which on its surface 102 is provided with an optically readable,two-dimensional position coding 103 (below referred to asposition-coding pattern) enabling position determination, morespecifically determination of absolute coordinates for points on thesheet 101. The position-coding pattern consists of symbols 104 which aresystematically arranged across the surface 102 so as to make itsappearance “patterned”. Depending on the size of the symbols, thepatterning can be perceived as a gray hue. The sheet has an x-coordinateaxis and a y-coordinate axis.

The position-coding pattern comprises a virtual raster, which thusneither is visible to the human eye nor can be detected directly by adevice which is to determine positions on the surface, and a pluralityof symbols 4, which each are capable of assuming one of four values“1”-“4” as will be described below. It should here be emphasized that,for the sake of clarity, the position-coding pattern in FIG. 3 has beenenlarged to a considerable extent. Moreover, the position-coding patternis shown only on part of the sheet.

The position-coding pattern is arranged in such manner that absolutecoordinates for a point on the imaginary surface are coded by thesymbols on a partial surface of the sheet, and thus by theposition-coding pattern, of a predetermined size. A first and a secondpartial surface 105 a, 105 b are indicated by dashed lines in FIG. 3.That part of the position-coding pattern (in this case 3×3 symbols)which is to be found on the first partial surface 105 a codes thecoordinates for a first point, and that part of the position-codingpattern which is to be found on the second partial surface 105 b codesthe coordinates for a second point on the sheet. Thus theposition-coding pattern is partially shared by the adjoining first andsecond points. Such a position-coding pattern is in this applicationreferred to as “floating”.

FIGS. 4a-d show an embodiment of a symbol which can be used in theposition-coding pattern. The symbol comprises a virtual raster point 106which is represented by the intersection between the raster lines, and amarking 107 which has the form of a dot. The value of the symbol dependson where the marking is located. In the example in FIG. 4, there arefour possible positions, one on each of the raster lines extending fromthe raster points. The displacement from the raster point is equal toall values. In the following, the symbol in FIG. 4a has the value 1, inFIG. 4b the value 2, in FIG. 4c the value 3 and in FIG. 4d the value 4.Expressed in other words, there are four different types of symbols.

Each symbol can thus represent four values “1-4”. This means that theposition-coding pattern can be divided into a first position code forthe x-coordinate, and a second position code for the y-coordinate. Thedivision is effected as follows:

Symbol value x-code y-code 1 1 1 2 0 1 3 1 0 4 0 0

Thus, the value of each symbol is translated into a first digit, in thiscase bit, for the x-code and a second digit, in this case bit, for they-code. In this manner, two completely independent bit patterns areobtained. The patterns can be combined to a common pattern, which iscoded graphically by means of a plurality of symbols according to FIG.4.

The coordinates for each point are coded by means of a plurality ofsymbols. In this example, use is made of 4×4 symbols to code a positionin two dimensions, i.e. an x-coordinate and a y-coordinate.

The position code is made up by means of a number series of ones andzeros which have the characteristic that no sequence of four bitsappears more than once in the series. The number series is cyclic, whichmeans that the characteristic also applies when one connects the end ofthe series to the beginning of the series. Thus a four-bit sequencealways has an unambiguously determined position in the number series.

The series can maximally be 16 bits long if it is to have theabove-described characteristic for sequences of four bits. In thisexample, use is, however, made of a series having a length of seven bitsonly as follows:

“0 0 0 1 0 1 0”.

This series contains seven unique sequences of four bits which code aposition in the series as follows:

Position in the series Sequence 0 0001 1 0010 2 0101 3 1010 4 0100 51000 6 0000

For coding the x-coordinate, the number series is written sequentiallyin columns across the entire surface that is to be coded. The coding isbased on the difference or position displacement between numbers inadjoining columns. The size of the difference is determined by theposition (i.e. with which sequence) in the number series, in which onelets the column begin. More specifically, if one takes the differencemodulo seven between on the one hand a number which is coded by afour-bit sequence in a first column and which thus can have the value(position) 0-6, and, on the other hand, a corresponding number (i.e. thesequence on the same “level”) in an adjoining column, the result will bethe same independently of where along the two columns one makes thecomparison. By means of the difference between two columns, it is thuspossible to code an x-coordinate which is constant for ally-coordinates.

Since each position on the surface is coded with 4×4 symbols in thisexample, three differences (having the value 0-6) as stated above areavailable to code the x-coordinate. Then the coding is carried out insuch manner that of the three differences, one will always have thevalue 1 or 2 and the other two will have values in the range 3-6.Consequently no differences are allowed to be zero in the x-code. Inother words, the x-code is structured so that the differences will be asfollows:

(3-6) (3-6) (1-2) (3-6) (3-6) (1-2) (3-6) (3-6) (1-2) . . . Eachx-coordinate thus is coded with two numbers between 3 and 6 and asubsequent number which is 1 or 2. If three is subtracted from the highnumbers and one from the low, a number in mixed base will be obtained,which directly yields a position in the x-direction, from which thex-coordinate can then be determined directly, as shown in the examplebelow.

By means of the above described principle, it is thus possible to codex-coordinates 0, 1, 2 . . . , with the aid of numbers representing threedifferences. These differences are coded with a bit pattern which isbased on the number series above. The bit pattern can finally be codedgraphically by means of the symbols in FIG. 6.

In many cases, when reading 4×4 symbols, it will not be possible toproduce a complete number which codes the x-coordinate, but parts of twonumbers. Since the least significant part of the numbers is always 1 or2, a complete number, however, can easily be reconstructed.

The y-coordinates are coded according to the same principle as used forthe x-coordinates. The cyclic number series is repeatedly written inhorizontal rows across the surface which is to be position-coded. Justlike in the case of the x-coordinates, the rows are allowed to begin indifferent positions, i.e. with different sequences, in the numberseries. However, for y-coordinates one does not use differences butcodes the coordinates with numbers that are based on the startingposition of the number series on each row. When the x-coordinate for 4×4symbols has been determined, it is in fact possible to determine thestarting positions in number series for the rows that are included inthe y-code in the 4×4 symbols. In the y-code the most significant digitis determined by letting this be the only one that has a value in aspecific range. In this example, one lets one row of four begin in theposition 0-1 in the number series to indicate that this row relates tothe least significant digit in a y-coordinate, and the other three beginin the position 2-6. In y-direction, there is thus a series of numbersas follows: (2-6) (2-6) (2-6) (0-1) (2-6) (2-6) (2-6) (0-1) (2-6) . . .Each y-coordinate thus is coded with three numbers between 2 and 6 and asubsequent number between 0 and 1.

If 1 is subtracted from the low number and 2 from the high, one obtainsin the same manner as for the x-direction a position in the y-directionin mixed base from which it is possible to directly determine they-coordinate.

With the above method it is possible to code 4×4×2=32 positions inx-direction. Each such position corresponds to three differences, whichgives 3×32=96 positions. Moreover, it is possible to code 5×5×5×2=250positions in y-direction. Each such position corresponds to 4 rows,which gives 4×250=1000 positions. Altogether it is thus possible to code96000 positions. Since the x-coding is based on differences, it is,however, possible to select in which position the first number seriesbegins. If one takes into consideration that this first number seriescan begin in seven different positions, it is possible to code7×96000=672000 positions. The starting position of the first numberseries in the first column can be calculated when the x-coordinate hasbeen determined. The above-mentioned seven different starting positionsfor the first series may code different sheets of paper or writingsurfaces on a product.

With a view to further illustrating how the position-coding patternfunctions, here follows a specific example which is based on thedescribed embodiment of the position code.

FIG. 5 shows an example of an image with 4×4 symbols which are read by adevice for position determination.

These 4×4 symbols have the following values:

4 4 4 2

3 2 3 4

4 4 2 4

1 3 2 4

These values represent the following binary x- and y-code:

x-code: y-code: 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 1 1 0 01 0 1 0

The vertical x-sequences code the following positions in the numberseries: 2 0 4 6. The differences between the columns will be −2 4 2,which modulo 7 gives: 5 4 2, which in mixed base codes position(5-3)×8+(4-3)×2+(2-1)=16+2+1=19. Since the first coded x-position isposition 0, the difference which is in the range 1-2 and which is to beseen in the 4×4 symbols is the twentieth such difference. Sincefurthermore there are a total of three columns for each such differenceand there is a starting column, the vertical sequence furthest to theright in the 4×4 x-code belongs to the 61st column in the x-code(3×20+1=61) and the one furthest to the left belongs to the 58th.

The horizontal y-sequences code the positions 0 4 1 3 in the numberseries. Since these series begin in the 58th column, the startingposition of the rows are these numbers minus 57 modulo7, which yieldsthe starting positions 6 3 0 2. Translated into digits in the mixedbase, this will be 6-2, 3-2, 0-0, 2-2=4 1 0 0 where the third digit isthe least significant digit in the number at issue. The fourth digit isthen the most significant digit in the next number. In this case, itmust be the same as in the number at issue. (An exceptional case is whenthe number at issue consists of the highest possible digits in allpositions. Then one knows that the beginning of the next number is onegreater than the beginning of the number at issue.)

The position of the four-digit number will then in the mixed base be0x50+4x10+1x2+0x1=42.

The third row in the y-code thus is the 43rd which has the startingposition 0 or 1, and since there are four rows in all on each such row,the third row is number 43×4=172.

Thus, in this example, the position of the uppermost left corner for the4×4 symbol group is (58,170).

Since the x-sequences in the 4×4 group begin on row 170, the x-columnsof the entire pattern begin in the positions of the number series ((2 04 6)−169) modulo 7=1 6 3 5. Between the last starting position (5) andthe first starting position, the numbers 0-19 are coded in the mixedbase, and by adding up the representations of the numbers 0-19 in themixed base, one obtains the total difference between these columns. Anaive algorithm to do so is to generate these twenty numbers anddirectly add up their digits. The resulting sum is called s. The sheetof paper or writing surface will then be given by (5-s)modulo7.

In the example above, an embodiment has been described, in which eachposition is coded with 4×4 symbols and a number series with 7 bits isused. Of course, this is but an example. Positions can be coded with alarger or smaller number of symbols. The number of symbols need not bethe same in both directions. The number series can be of differentlength and need not be binary, but may be based on another base.Different number series can be used for coding in x-direction and codingin y-direction. The symbols can have different numbers of values. Acoding with 6×6 symbols is presently preferred, in which case eachsymbol can assume four values. A person skilled in the art can easilygeneralize the Examples above to relate to such coding.

In the example above, rows can of course be replaced with columns andcolumns be replaced with rows.

In the example above, the marking is a dot but may, of course, have adifferent appearance. For example, it may consist of a dash or someother indication which begins in the virtual raster point and extendstherefrom to a predetermined position.

In the example above, the symbols within a square partial surface areused for coding a position. The partial surface may have a differentform, such as hexagonal. The symbols need not be arranged in rows andcolumns at an angle of 900 to each other but can also be arranged insome other manner.

For the position code to be detected, the virtual raster must bedetermined. This can be carried out by studying the distance betweendifferent markings. The shortest distance between two markings mustderive from two neighboring symbols having the value 1 and 3 so that themarkings are located on the same raster line between two raster points.When such a pair of markings has been detected, the associated rasterpoints can be determined with knowledge of the distance between theraster points and the displacement of the markings from the rasterpoints. When two raster points have once been located, additional rasterpoints can be determined by means of measured distances to othermarkings and with knowledge of the relative distance of the rasterpoints.

In an actual design of the position code, a nominal space of 0.3 mmbetween the symbols has been used. If each position is coded with 6×6symbols, then a 1.8 mm×1.8 mm surface is required for one position. Bydetermining the position of the 6×6 symbols on a sensor in a recordingdevice which is used to read the position code, a position can becalculated with a resolution of 0.03 mm. Since each position is codedwith 6×6 symbols which can each assume one of four values, 2⁷² positionscan be coded, which with the above-mentioned nominal space between thesymbols corresponds to a surface of 4.6 million km². This fact that avery large number of unique positions can be coded, can as mentionedabove be utilized by dedicating different coordinate areas to specificapplications.

The position code can be printed by standard offset printing on anysheet of paper or other material. A common black carbon-based printingink or some other printing ink that absorbs IR light can advantageouslybe used. This means that other inks, including black ink which is notcarbon-based, can be used to superimpose some other print on theposition code without interfering with the reading thereof.

A surface which is provided with the above-mentioned position codeprinted with a carbon-based black printing ink will be experienced bythe human eye as merely a slight gray hue of the surface (1-3% black),which is user-friendly and esthetically pleasing.

It goes without saying that a larger or smaller number of symbols thandescribed above can be used to define a position on the imaginarysurface, and larger or smaller distances between the dots can be used inthe pattern. The examples are stated just to show a presently preferredimplementation of the pattern.

It is evident that the above described position-coding pattern codesabsolute positions.

Device for Recording Information

An embodiment of a device for recording orders is schematically shown inFIG. 6. The device is adapted to record information alternatives bymeans of a 2-dimensional position code of the type described above.

The device comprises a casing 11 having approximately the shape of apen. In the short side of the casing there is an opening 12. The shortside is intended to abut against or be placed a short distance from theproduct from whose surface an information alternative is to be recordedby reading the position code.

The casing contains essentially an optics part, an electronic circuitrypart, and a power supply.

The optics part comprises at least one light emitting diode 13 forilluminating the surface which is to be imaged and a light-sensitivearea sensor 14, such as a CCD or CMOS sensor, for recording atwo-dimensional image. The device may also comprise a lens system.

The power supply to the device is obtained from a battery 15 which ismounted in a separate compartment in the casing. The electroniccircuitry part comprises processing means 16 for determining a positionon the basis of the recorded image and more specifically a processorwhich is programmed to read images from the sensor and to carry outposition determination on the basis of a position code which isidentified in these images.

Moreover, the device comprises buttons 18 by means of which the useractivates and controls the device. It also comprises a transceiver 19for wireless transfer of information to and from the device. The devicecan also comprise a display 20 for showing recorded orders.

Applicant's Swedish Patent No. 9604008-4 describes a device forrecording text. This device can be used to record orders if programmedin a suitable way.

The device can be divided into different physical casings, a firstcasing containing the area sensor and other components required forcapturing images of the code and for transferring them to a processorwhich is located in a second casing and which carries out the positiondetermination on the basis of the recorded image or images.

System for Recording Information

FIG. 7 shows schematically an embodiment of a system according to theinvention. The system comprises a product 71 with position code andinformation alternatives, a device 72 for reading the position code forrecording of information alternatives, and an external computer 73 witha memory structure 74 for storing which positions correspond to whichinformation alternatives.

The product 71 can be, for example, the menu shown in FIG. 2, and thedevice 72 can be, for example, the device shown in FIG. 6. The computer73 can be an ordinary personal computer which can also be used for otherpurposes and which contains suitable software. The memory structure canbe a table, a database or the like which is stored in the memory of thecomputer or in a memory which is connected to the computer. The computer73 can also be a computer which is reached via computer network, such asthe Internet, and which communicates with a plurality of devices 72 forrecording information. In this case, read positions can be transferredfrom the device 72 via a network connecting unit (not shown), such as amobile phone, which allows transfer of information to the computernetwork.

As is evident from that stated above, the two-dimensional position codecan code coordinates for a very large number of unique positions—a muchlarger number than required on, for example, a normal size sheet. Thiscan be used to distinguish individual products or applications for whichproducts are used. More specifically, different coordinate areas withinthe area that can be coded with the position code can be dedicated todifferent products or different applications. In the case where thecomputer 73 communicates with a plurality of devices 72, e.g. thecomputer 73 can identify to which product the received positions relateand, thus, correctly identify associated information alternatives which,for example, can be transferred to another computer in the computernetwork where the recorded information is to be used.

Software for Makinq the Product

FIG. 8 shows schematically a flow chart for software which is used in acomputer, such as the computer 73 in FIG. 7, for making a productaccording to the invention, in this case exemplified by the menu shownin FIG. 2.

In a first step 81, the software prints the position code on a sheet ofpaper which is to be the menu in FIG. 2 via a printer. The position codecovers the entire sheet. The position code codes coordinates within acoordinate area. The specific coordinate area can be preset in theprogram or be selected within certain limits.

In a second step 82, the user enters the various informationalternatives via the keyboard of the computer. The software can bedesigned to suggest different code areas in which the user can indicateinformation alternatives. In a variant, the user can himself define codeareas, for example by “drawing” areas on the sheet of paper by means ofa device for recording information, such as the device 72 in FIG. 7,which then records the coordinates for the points defining the codeareas. In a further variant, the user can draw boxes on a copy of thesheet of paper which is shown on the display of the computer.

In connection with this step, the connection between positions on thesheet of paper and information alternatives is stored in a memorystructure, step 83.

Then the user places the sheet in the printer and the informationalternatives entered via the keyboard are printed on the sheet, step 84,whereupon the product is ready to be used for recording information.

The first step 81 need not be carried out by the software. The user caninstead buy sheets which are already provided with position code.

Function of the System

Here follows the description of the function of the system withreference to the Example in FIG. 2.

A customer at the restaurant can record her order herself with the aidof the above device. First, the customer decides which dish she isinterested in. Next, she points to this dish on the menu using thedevice for recording the order, so that the opening of the device isabove or a short distance from the order alternative. The sensor 14 inthe device then reads the position code 4 within the visual field of thedevice and the processor means 16 determine the position on the menu 1.Subsequently, the position is stored in a memory in the device, or istransferred directly to an order computer together with data indicatingwhich customer the position information originates from. The transfer tothe order computer is effected by the intermediary of the transceiver19, for example utilizing radio waves according to the so-called“Bluetooth system”. When the order computer has received the positioninformation it looks up the order alternative, i.e. the dish, to whichthis position corresponds in the memory structure in the computer andsends the order to the kitchen where the dish is prepared.

Naturally, the waiter can record the order instead with the aid of thedevice.

In an alternative embodiment, there can be a box in front of each orderalternative on the menu. The customer ticks the boxes in front of thedishes and beverages she wishes to order, whereupon the waiter recordsthe order by pointing the device to each tick so that an image of theposition code for each tick is recorded.

In one more alternative embodiment, the customer, or the waiter, can bymeans of the device which then is provided with a pen, note the numberof ordered dishes by noting a digit or the corresponding number ofdashes in connection with the ordered dish. If, for example, thecustomer orders two smoked salmon toasts, a two is written in front ofthe smoked salmon toast alternative. The two is recorded digitally bymeans of the device and is transferred to the kitchen. The customerkeeps the menu with the notes about the order as a receipt of the orderas made.

In the above example, the code areas overlap the order alternatives sothat the user can point directly to the order alternative.Alternatively, the code areas 5, as shown in FIG. 9, can be separatedfrom the fields 3, i.e. the order alternatives, and instead be arrangedadjacent to them. In this embodiment, one avoids the problem of thesuperimposed order alternative interfering with the reading of the codebut, on the other hand, a special area is required for the code areas,which may be a drawback in certain applications.

The above example relates to orders taken at a restaurant. Naturally,the same technology can be used for ordering seats at a cinema, atheater or on an airplane and for all other types of orders wherealternatives can be presented using text or graphical information.

Moreover, it should be noted that for the sake of clarity, the codeareas 5 are indicated on the menus in the Figures. This is not necessaryin practice.

In the above example, the invention has been used for recording ordersat a restaurant. However the invention can be used to record any type ofinformation.

For example, the above menu could instead be a form used for documentingthe results of a vehicle inspection. In that case, the user can recordinformation about defects in the vehicle by reading the code fordifferent alternatives on the inspection report. For example, supposethat a safety belt in the vehicle is so defective that in the inspectionthe car is given a negative rating of three out of three possiblelevels. “Safety belt” is written on the form and there are three boxesfor the three different levels. In this case, the inspector uses thedevice to read the position code in the third box. The device determineswhich position the position code represents. This position thusidentifies a field on the surface of the form, viz. the fieldcorresponding to the third box after the words “safety belt”. The fieldis identified by means of the position. The information alternativeassociated with the field, viz. “safety belt rating level 3”, is storedin the device, or in a unit to which the position information istransferred. By reading the position code, it is thus possible to recordthis information.

The invention can be used in a similar way to record other types ofinformation.

What is claimed is:
 1. A product intended to be used in connection withthe recording of information and having a surface on which there are aplurality of different information alternatives, each having anassociated code area, wherein the surface is provided with atwo-dimensional position code which codes coordinates for a plurality ofpositions on the surface in said code areas and is unrelated to theinformation to be recorded, said surface permitting recording of adesired information alternative by reading the position code for aposition in the code area associated with the desired informationalternative.
 2. A product according to claim 1, wherein said positioncode codes the coordinates for a plurality of positions in at least onecode area, so that the associated information alternative can berecorded by reading an arbitrary position in said at least one codearea.
 3. A product according to claim 1 or 2, wherein the position codeoverlaps at least one of the information alternatives.
 4. A productaccording to claim 1, wherein the position code extends across theentire surface.
 5. A product according to claim 1, wherein the positioncode is based on a first string of symbols containing a firstpredetermined number of symbols and having the characteristic that if asecond predetermined number of symbols is removed from the first stringof symbols, the location of the symbols in the first string of symbolsis unambiguously determined.
 6. A product according to claim 5, whereinthe position code is further based on a second string of symbols havingthe same characteristic as the first string of symbols.
 7. A productaccording to claim 1, wherein the position code has the characteristicthat each arbitrary partial surface having a predetermined size on thesurface and containing the position code defines a position.
 8. Aproduct according to claim 1, wherein the position code is made up ofsymbols representing at least two different values, wherein each symbolcomprises a raster point which is included in a raster extending acrossthe surface, and at least one marking; and wherein the value of eachsymbol is indicated by the position of said marking in relation to araster point.
 9. A product according to claim 1, wherein the positioncode is a subset of a greater position code.
 10. A product according toclaim 1, wherein the position code is optically readable.
 11. A productaccording to claim 1, wherein the product has the form of a sheet.
 12. Aproduct according to claim 1, wherein the information alternatives arestated using written characters.
 13. A product according to claim 1,wherein said surface is provided with at least one writing area andwherein said position code overlaps the writing area and codescoordinates for a plurality of positions in the writing area.
 14. Aproduct according to claim 13, wherein said writing area is associatedwith an information alternative and constitutes part of the code area ofthe information alternative.
 15. A product according to claim 1, whereinthe position code in each code area identifies a field on the surface,in which the information unit with which the position code is associatedis reproduced.
 16. A system for recording information, said systemcomprising: a product according to claim 1; and a device for recordingone of said plurality of information alternatives, said deviceincluding: a sensor for reading the position code in the code areaassociated with said information alternative, and processor meansexecuting software for interpreting the read code in order to identifythe position which corresponds to the read position code.
 17. A systemaccording to claim 16, wherein said device further executes software foridentifying the recorded information unit on the basis of the identifiedposition.
 18. A system according to claim 16 or 17, further comprising amemory structure for storing an information unit for each code area onthe surface.
 19. A method for making a product for recordinginformation, comprising steps of: creating a surface with atwo-dimensional position code, which codes coordinates for a pluralityof positions on the surface; applying a plurality of informationalternatives which are unrelated to the position code on the surface;determining, for each information alternative, a code area in whichreading of the position code is to result in recording of thisinformation alternative; and associating this code area with theinformation alternative in a memory structure.
 20. A storage medium fora computer, on which software for carrying out the steps according claim19 is stored.